package com.tedu.api.io;

import org.junit.Test;

import java.io.File;
import java.io.FileFilter;

/**
 * 作业1：ListFiles(FilerFilter接口)，使用实现类方法
 *                                  使用匿名内部类方法
 *       创建一次对象，使用匿名内部类
 *       语法：   接口   接口引用=new  接口(){重写：accept}；
 *
 *
 * 作业2：删除demo下有abc  以及   bcd  的文件
 *      提示：demo/abc/bcd
 *      查 File构造器方法：从内部依次删除
 *      new File(parent,"路径“)；   ---API介绍
 *      构造器：第一个参数：指定父级路径---确定不变---建议使用传两个参数方法
 *            第二个参数：指定子级路径
 *
 */
public class homework {
   /* 作业2
   @Test
    public void testDelete() {

        //demo/abc/bcd/demo.txt
        String parent = "demo" + File.separator;
        //abc/bcd/demo.txt     第一个子集：删除   demo.txt
        String child1 = "abc" + File.separator + "bcd" + "" + File.separator + "demo.txt";
        String child2 = "abc" + File.separator + "bcd";
        String child3 = "abc";
        //创建四次File对象
        File file = new File(parent, child1);
        file.delete();
        File file2 = new File(parent, child2);//删掉bcd文件夹
        file2.delete();
        File file3 = new File(parent, child3);//删掉abc文件夹
        file3.delete();
        File file4 = new File(parent);
        file4.delete();
        System.out.println("删除");


    }*/

    /*作业1*/
    @Test
    public void testHomework() {
        class FileFilterExample {
            public void main(String[] args) {
                File file01 = new File("demo" + File.separator + "abc" +
                        "" + File.separator + "bcd" + File.separator + "demo.txt");
                FileFilter fileFilter = new FileFilter() {
                    @Override
                    public boolean accept(File pathname) {
                        return pathname.getName().endsWith(".txt");
                    }
                };
                File[] files = file01.listFiles(fileFilter);
                if (files != null) {
                    for (File file : files) {
                        System.out.println(file.getName());
                    }
                }
            }
        }
    }}